package com.internetCafes.spms.web.tenant.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.internetCafes.spms.web.tenant.model.TenantDeptInfoPlus;
import com.internetCafes.spms.web.tenant.model.podo.TenantDeptInfoPlusDo;
import com.internetCafes.spms.web.tenant.model.podo.TenantDeptInfoPlusPo;

import java.util.List;
import java.util.Map;

/**
 * 企业部门信息 mybatisPlus 版
 *
 * @author Zj 2021/12/8 15:19
 */
public interface ITenantDeptInfoPlusService extends IService<TenantDeptInfoPlus> {

    /**
     * 企业部门人员数量统计
     *
     * @param tenantId 企业id
     * @return 企业人员数量统计
     */
    Map<Long, Integer> countDeptMemberAmountByTenantId(Long tenantId);

    /**
     * 部门信息列表
     *
     * @param deptInfoPlusDo 请求参数
     * @return 部门列表
     */
    List<TenantDeptInfoPlusPo> listPoNoTenantId(TenantDeptInfoPlusDo deptInfoPlusDo);

    /**
     * 获取员工
     *
     * @param employeeUserId 员工账户id
     * @return 部门列表
     */
    List<TenantDeptInfoPlusPo> parentDeptListByEmployeeUserId(Long employeeUserId);

    /**
     * 获取部门列表情况
     *
     * @param deptInfoPlusDo 请求参数
     * @return 部门列表
     */
    List<TenantDeptInfoPlusPo> deptList(TenantDeptInfoPlusDo deptInfoPlusDo);
}
